As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option is an Information Handling System (IHS). An IHS generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes. Because technology and information handling needs and requirements may vary between different applications, IHSs may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in IHSs allow for IHSs to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, global communications, etc. In addition, IHSs may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
An IHS is typically comprised of hardware components that utilize firmware instructions for governing the operation of these hardware components. The firmware instructions for a hardware component are typically stored in a non-volatile memory that is integral to the hardware component. In certain scenarios, the firmware utilized by a hardware component may be updated in order to correct errors in and/or improve the performance of the hardware component. In certain networked environments, the firmware for a hardware component may be updated remotely. For instance, a system administrator, or an automated script configured by an administrator, may be used to push firmware updates to the hardware component and initiate updating of the firmware.
In many cases, networks comprised of relatively large numbers of IHSs are managed by organizations that utilize IT (Information Technology) policies for governing the administration of the network and the IHSs that comprise the network. Some of these IT policies may govern the updating of hardware and/or software on the IHSs that are being managed. In certain scenarios, especially where larger networks of IHSs are being managed, IT policies may restrict the updating of software utilized by an IHS and, in some cases, different restrictions may be placed on updating different types of software. For instance, IT policies may be relatively liberal in allowing updates to the operating system software of an IHS or updating application software installed on an IHS, but may severely restrict the updating of firmware present on an IHS.
As described, firmware provides an interface between the operating system of an IHS and a hardware component. By updating the firmware of a hardware component, the operation of a component is typically affected. In some cases, these changes to the operation of a hardware component may include undesirable side-effects. For instance, IHSs may include or interface with important legacy systems that are incompatible with certain upgrades to the firmware of an IHS hardware component. Accordingly, organizations may prefer to defer certain firmware updates in order to maintain such legacy functionality. In some cases, such firmware updates may be deferred until a corresponding update can be made to the legacy system. Different organizations will implement different policies for updating firmware that are particular to the business purposes that are served by the IHSs.
One particular type of firmware that may be utilized by an IHS is the firmware that is utilized by the BIOS (Basic Input/Output System) of the IHS. An IHS typically includes at least one central processing unit (CPU), a system memory, such as a non-volatile memory or a flash memory, associated with the CPU, and a storage device such as a hard disk, floppy disk or CD-ROM. The BIOS firmware is typically stored in this system memory of an IHS. When an IHS is powered on, or “booted,” the BIOS is initialized. The BIOS then verifies that all hardware components of the IHS are functional. The BIOS subsequently loads a stored operating system. The BIOS also provides data and instructions that enable the operating system to interoperate with the hardware components that are installed on the IHS. The Unified Extensible Firmware Interface (UEFI) was designed as a successor to conventional BIOS, aiming to address certain technical shortcomings. Newer IHSs predominantly utilize UEFI firmware instead of a BIOS. For the purposes of this disclosure, UEFI and BIOS may be treated interchangeably.
As with other firmware, in certain instances, it may be desirable to update the BIOS of an IHS. For example, the system BIOS may be updated in order to utilize new BIOS features that have become available. Or, the BIOS may be updated in order to support the installation of new hardware on an IHS. Updating the BIOS may also necessary if problems with the system BIOS are detected. However, even more than other firmware, changes to the BIOS of an IHS can have significant ramifications with regards to the operation IHS. For instance, changes to the BIOS may result in significant changes with regard to hardware compatibility. Due at least in part to the potential impact of a change to the BIOS, organizations managing large numbers of IHSs may severely restrict BIOS updates. In certain instances, organization may prefer to delay BIOS firmware updates until any compatibility or other issues associated with the upgrade have been resolved.
Different organization utilizing different types of hardware and/or software may have different preferences and policies for updating BIOS firmware. For instance, an organization using mostly off-the-shelf hardware and software components may have no need to defer any BIOS upgrades, while another organization using customized components may upgrade the BIOS only after verifying compatibility. Additionally, organizations may also prefer to delay certain firmware upgrades for certain groups of IHSs that are being managed. For instance, an organization may utilize both off-the-shelf IHSs and customized IHSs for which firmware upgrades may be managed according to different policies.